Various mobile devices also support applications that can be downloaded in a representation that cannot be executed directly but can be executed when compiled on a mobile device using just-in-time compilation (JIT compilation). Although JIT compilation of code has been used to run applications on a computer, running applications using JIT compilation has limitations, including additional time needed for compilation when the application runs, and potentially non-optimal decisions made during compilation.